home *** CD-ROM | disk | FTP | other *** search
- package javax.swing;
-
- import java.awt.Component;
- import java.awt.Point;
- import javax.accessibility.Accessible;
- import javax.accessibility.AccessibleContext;
- import javax.accessibility.AccessibleRole;
- import javax.accessibility.AccessibleSelection;
- import javax.swing.event.TreeExpansionEvent;
- import javax.swing.event.TreeExpansionListener;
- import javax.swing.event.TreeModelEvent;
- import javax.swing.event.TreeModelListener;
- import javax.swing.event.TreeSelectionEvent;
- import javax.swing.event.TreeSelectionListener;
- import javax.swing.plaf.TreeUI;
- import javax.swing.tree.TreeCellRenderer;
- import javax.swing.tree.TreeModel;
- import javax.swing.tree.TreePath;
-
- public class JTree$AccessibleJTree extends JComponent.AccessibleJComponent implements AccessibleSelection, TreeSelectionListener, TreeModelListener, TreeExpansionListener {
- // $FF: synthetic field
- private final JTree this$0;
- TreePath leadSelectionPath;
- Accessible leadSelectionAccessible;
-
- public JTree$AccessibleJTree(JTree var1) {
- super(var1);
- this.this$0 = var1;
- var1.getModel().addTreeModelListener(this);
- var1.addTreeExpansionListener(this);
- var1.addTreeSelectionListener(this);
- this.leadSelectionPath = var1.getLeadSelectionPath();
- this.leadSelectionAccessible = this.leadSelectionPath != null ? new JTree.AccessibleJTree.AccessibleJTreeNode(this, var1, this.leadSelectionPath, var1) : null;
- }
-
- // $FF: synthetic method
- static JTree access$0(JTree$AccessibleJTree var0) {
- return var0.this$0;
- }
-
- public void addAccessibleSelection(int var1) {
- TreeModel var2 = this.this$0.getModel();
- if (var2 != null && var1 == 0) {
- Object[] var3 = new Object[]{var2.getRoot()};
- TreePath var4 = new TreePath(var3);
- this.this$0.addSelectionPath(var4);
- }
-
- }
-
- public void clearAccessibleSelection() {
- int var1 = this.getAccessibleChildrenCount();
-
- for(int var2 = 0; var2 < var1; ++var2) {
- this.removeAccessibleSelection(var2);
- }
-
- }
-
- public void fireVisibleDataPropertyChange() {
- ((AccessibleContext)this).firePropertyChange("AccessibleVisibleData", new Boolean(false), new Boolean(true));
- }
-
- public Accessible getAccessibleAt(Point var1) {
- TreePath var2 = this.this$0.getClosestPathForLocation(var1.x, var1.y);
- return var2 != null ? new JTree.AccessibleJTree.AccessibleJTreeNode(this, this.this$0, var2, (Accessible)null) : null;
- }
-
- public Accessible getAccessibleChild(int var1) {
- TreeModel var2 = this.this$0.getModel();
- if (var2 != null) {
- if (var1 != 0) {
- return null;
- } else {
- Object[] var3 = new Object[]{var2.getRoot()};
- TreePath var4 = new TreePath(var3);
- return new JTree.AccessibleJTree.AccessibleJTreeNode(this, this.this$0, var4, this.this$0);
- }
- } else {
- return null;
- }
- }
-
- public int getAccessibleChildrenCount() {
- TreeModel var1 = this.this$0.getModel();
- return var1 != null ? 1 : 0;
- }
-
- public int getAccessibleIndexInParent() {
- return 0;
- }
-
- public AccessibleRole getAccessibleRole() {
- return AccessibleRole.TREE;
- }
-
- public AccessibleSelection getAccessibleSelection() {
- return this;
- }
-
- public Accessible getAccessibleSelection(int var1) {
- TreePath[] var2 = this.this$0.getSelectionPaths();
- return var1 >= 0 && var1 < var2.length ? new JTree.AccessibleJTree.AccessibleJTreeNode(this, this.this$0, var2[var1], this.this$0) : null;
- }
-
- public int getAccessibleSelectionCount() {
- return this.this$0.getSelectionCount();
- }
-
- private AccessibleContext getCurrentAccessibleContext() {
- Component var1 = this.getCurrentComponent();
- return var1 instanceof Accessible ? ((Accessible)var1).getAccessibleContext() : null;
- }
-
- private Component getCurrentComponent() {
- TreeModel var1 = this.this$0.getModel();
- TreePath var2 = new TreePath(var1.getRoot());
- if (this.this$0.isVisible(var2)) {
- TreeCellRenderer var3 = this.this$0.getCellRenderer();
- TreeUI var4 = this.this$0.getUI();
- if (var4 != null) {
- int var5 = var4.getRowForPath(this.this$0, var2);
- int var6 = this.this$0.getLeadSelectionRow();
- boolean var7 = this.this$0.hasFocus() && var6 == var5;
- boolean var8 = this.this$0.isPathSelected(var2);
- boolean var9 = this.this$0.isExpanded(var2);
- return var3.getTreeCellRendererComponent(this.this$0, var1.getRoot(), var8, var9, var1.isLeaf(var1.getRoot()), var5, var7);
- }
- }
-
- return null;
- }
-
- public boolean isAccessibleChildSelected(int var1) {
- TreePath[] var2 = this.this$0.getSelectionPaths();
- TreeModel var3 = this.this$0.getModel();
-
- for(int var5 = 0; var5 < var2.length; ++var5) {
- Object var4 = var2[var5].getLastPathComponent();
- if (var1 == var3.getIndexOfChild(var3.getRoot(), var4)) {
- return true;
- }
- }
-
- return false;
- }
-
- public void removeAccessibleSelection(int var1) {
- TreeModel var2 = this.this$0.getModel();
- if (var2 != null && var1 == 0) {
- Object[] var3 = new Object[]{var2.getRoot()};
- TreePath var4 = new TreePath(var3);
- this.this$0.removeSelectionPath(var4);
- }
-
- }
-
- public void selectAllAccessibleSelection() {
- TreeModel var1 = this.this$0.getModel();
- if (var1 != null) {
- Object[] var2 = new Object[]{var1.getRoot()};
- TreePath var3 = new TreePath(var2);
- this.this$0.addSelectionPath(var3);
- }
-
- }
-
- public void treeCollapsed(TreeExpansionEvent var1) {
- this.fireVisibleDataPropertyChange();
- }
-
- public void treeExpanded(TreeExpansionEvent var1) {
- this.fireVisibleDataPropertyChange();
- }
-
- public void treeNodesChanged(TreeModelEvent var1) {
- this.fireVisibleDataPropertyChange();
- }
-
- public void treeNodesInserted(TreeModelEvent var1) {
- this.fireVisibleDataPropertyChange();
- }
-
- public void treeNodesRemoved(TreeModelEvent var1) {
- this.fireVisibleDataPropertyChange();
- }
-
- public void treeStructureChanged(TreeModelEvent var1) {
- this.fireVisibleDataPropertyChange();
- }
-
- public void valueChanged(TreeSelectionEvent var1) {
- TreePath var2 = this.leadSelectionPath;
- this.leadSelectionPath = this.this$0.getLeadSelectionPath();
- if (var2 != this.leadSelectionPath) {
- Accessible var3 = this.leadSelectionAccessible;
- this.leadSelectionAccessible = this.leadSelectionPath != null ? new JTree.AccessibleJTree.AccessibleJTreeNode(this, this.this$0, this.leadSelectionPath, this.this$0) : null;
- ((AccessibleContext)this).firePropertyChange("AccessibleActiveDescendant", var3, this.leadSelectionAccessible);
- }
-
- ((AccessibleContext)this).firePropertyChange("AccessibleSelection", new Boolean(false), new Boolean(true));
- }
- }
-